package groupb6.shopsystem.service;

import groupb6.shopsystem.pojo.entity.Order;
import groupb6.shopsystem.pojo.entity.Product;
import groupb6.shopsystem.pojo.entity.Return;
import groupb6.shopsystem.pojo.form.*;
import groupb6.shopsystem.util.response.UniversalResponse;

import java.util.List;

public interface SellerService {
    UniversalResponse<Product> AddProduct(Product product);

    UniversalResponse<Product> UnlistProduct(Integer productId);

    UniversalResponse<List<Product>> showProductsBySellerId();

    UniversalResponse<List<OrderWithReturnInfo>> showOrdersBySellerId();

    UniversalResponse<Order> ShipOrder(Integer Idorder);

    UniversalResponse<List<Integer>> CheckorderByProductId(Integer productId);

    UniversalResponse<List<Product>> ModifyProduct(Product product);

    UniversalResponse<ModifyProductForm> getProductAttributes(Integer productId);

    UniversalResponse<SearchSellerForm> getSellerInformation(Integer id);

//    UniversalResponse<List<List<Return>>> showReturn();

    UniversalResponse<Return> AgreeReturnById(HandleReturnForm handle);

//    UniversalResponse<Return> ReceiveReturnById(HandleReturnForm handle);
}
